<?php

namespace EM\NewsBundle\Controller;
use EM\NewsBundle\Entity\Roles;
use EM\NewsBundle\Form\RolType;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

class RolController extends Controller
{
    
	public function createAction(Request $request)
    {
	

		$rol = new Roles();
		$form = $this->createForm(new RolType(), $rol);
		$request = $this->getRequest();
		//-- En caso de que el request haya sido invocado por POST
		//   procesaremos el formulario
		if($request->getMethod() == 'POST')
		{
			//-- Pasamos el request el método bindRequest() del objeto 
			//   formulario el cual obtiene los datos del formulario
			//   y los carga dentro del objeto Article que está contenido
			//   también dentro del objeto Type
			$form->bind($request);

			//-- Con esto nuestro formulario ya es capaz de decirnos si
			//   los dato son válidos o no y en caso de ser así
			if($form->isValid())
			{
				$em = $this->getDoctrine()->getEntityManager();
				$em->persist($rol);
				$em->flush();
				return $this->redirect($this->generateUrl('em_rol_list'));
			}
		}
		
			
		return $this->render('EMNewsBundle:Rol:new.html.twig', array(
			'form' => $form->createView(),
		));
    }
	
	public function showAction(){
	
		$repository=$this->getDoctrine()->getRepository('EMNewsBundle:Roles');
		$roles = $repository->findAll();	
		
		return $this->render('EMNewsBundle:Rol:list.html.twig',array('roles' => $roles));
	
	}
	public function editAction($id)
    {
	
		
		$em = $this->getDoctrine()->getEntityManager();
		$rol=$em->getRepository('EMNewsBundle:Roles')->find($id);
		$form = $this->createForm(new RolType(), $rol);
		$request = $this->getRequest();
		//-- En caso de que el request haya sido invocado por POST
		//   procesaremos el formulario
		if($request->getMethod() == 'POST')
		{
			//-- Pasamos el request el método bindRequest() del objeto 
			//   formulario el cual obtiene los datos del formulario
			//   y los carga dentro del objeto Article que está contenido
			//   también dentro del objeto Type
			$form->bind($request);

			//-- Con esto nuestro formulario ya es capaz de decirnos si
			//   los dato son válidos o no y en caso de ser así
			if($form->isValid())
			{
				
				$em->persist($rol);
				$em->flush();
				return $this->redirect($this->generateUrl('em_rol_list'));
			}
		}
		
			
		return $this->render('EMNewsBundle:Rol:edit.html.twig', array(
			'form' => $form->createView(),
			'id'=>$id
		));
    }
	public function deleteAction($id)
    {
	
		
		$em = $this->getDoctrine()->getEntityManager();
		$rol=$em->getRepository('EMNewsBundle:Roles')->find($id);
		$em->remove($rol);
		$em->flush();
		//return new Response('Deleted!');	
		return $this->redirect($this->generateUrl('em_rol_list'));
    }
	
	
}
